#if 1
#include <stdio.h>
#include <stdlib.h>
typedef int datatype;
typedef struct SLnode
{
	datatype data;
	struct SLnoode* next;
}SLnode;
SLnode* nz(SLnode* head)
{
	SLnode* n1, * n2, * n3;
	n1 = NULL;
	n2 = head;
	n3 = head->next;
	while (n2)
	{
		n2->next = n1;
		n1 = n2;
		n2 = n3;
		if(n3)
		n3 = n3->next;
	}
	return n1;
}
int main()
{
	SLnode* node1 = (SLnode*)malloc(sizeof(SLnode));
	node1->data = 1;
	SLnode* node2 = (SLnode*)malloc(sizeof(SLnode));
	node2->data = 4;
	SLnode* node3 = (SLnode*)malloc(sizeof(SLnode));
	node3->data = 5;
	SLnode* node4 = (SLnode*)malloc(sizeof(SLnode));
	node4->data = 6;
	SLnode* node5 = (SLnode*)malloc(sizeof(SLnode));
	node5->data = 4;
	SLnode* node6 = (SLnode*)malloc(sizeof(SLnode));
	node6->data = 4;
	node1->next = node2;
	node2->next = node3;
	node3->next = node4;
	node4->next = node5;
	node5->next = node6;
	node6->next = NULL;
	SLnode* plist = node1;
	while (node1)
	{
		printf("%d->", node1->data);
		node1 = node1->next;
	}
	printf("NULL\n");
	SLnode* ret = nz(plist);
	while (ret)
	{
		printf("%d->", ret->data);
		ret = ret->next;
	}
	printf("NULL\n");
	return 0;
}
#endif